:root{--maroon:#7a1113;--maroon-d:#4a0b0c;--cream:#FDF6E9;--gold:#F2C94C;--ink:#1c1410;--blue:#1a73e8;--ok:#1e9e4a;--bad:#d33;
--r:22px;--shadow:0 6px 20px rgba(74,11,12,.12);--font:'Poppins',system-ui,sans-serif;--serif:'Playfair Display',serif;--kn:'Noto Sans Kannada',sans-serif;
--sat:env(safe-area-inset-top);--sab:env(safe-area-inset-bottom)}
*{box-sizing:border-box}html,body{margin:0;max-width:100%;overflow-x:hidden}
body{background:var(--cream);color:var(--ink);font-family:var(--font);min-height:100dvh;padding-bottom:calc(96px + var(--sab))}
html[lang=kn] body{font-family:var(--kn),var(--font)}
.app-header{background:linear-gradient(135deg,var(--maroon),var(--maroon-d));color:#fff;padding:calc(12px + var(--sat)) 16px 14px;display:flex;align-items:center;gap:10px}
.card{background:#fff;border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}
.grid{display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}
@media(max-width:359px){.grid{grid-template-columns:1fr}}
@media(min-width:768px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.grid{grid-template-columns:repeat(4,1fr)}body{padding-bottom:0}.bottom-nav{display:none}}
.chip{border-radius:99px;padding:6px 14px;background:#f6e7d2;border:0;font:inherit}.chip.active{background:var(--maroon);color:#fff}
.badge-open{background:var(--ok);color:#fff}.badge-closed{background:var(--bad);color:#fff}
.bottom-nav{position:fixed;left:12px;right:12px;bottom:calc(10px + var(--sab));background:var(--ink);border:1px solid var(--gold);border-radius:28px;display:flex;justify-content:space-around;padding:8px}
.bottom-nav .active i{background:var(--gold);box-shadow:0 0 14px var(--gold);border-radius:14px}
.skeleton{background:linear-gradient(90deg,#eee 25%,#f7f7f7 50%,#eee 75%);background-size:200%;animation:sh 1.2s infinite}@keyframes sh{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
